package com.jfinal.cli.common.exception;

/**
 * 业务系统异常
 *
 * @author: lbq
 * @email: 526509994@qq.com
 * @date: 16/8/19
 */
public class BizException extends RuntimeException {
    private static final long serialVersionUID = 1L;

    private final int code;
    private final String msg;

    public BizException(String msg) {
        super(msg);
        this.code = -1;
        this.msg = msg;
    }

    public BizException(int code, String msg) {
        super(msg);
        this.code = code;
        this.msg = msg;
    }

    @Override
    public String getMessage() {
        return msg;
    }

    public int getCode() {
        return code;
    }

    /**
     * 手动抛出异常
     *
     * @param msg
     */
    public static void throwException(String msg) {
        throw new BizException(msg);
    }

    /**
     * 手动抛出异常
     *
     * @param code
     * @param msg
     */
    public static void throwException(int code, String msg) {
        throw new BizException(code, msg);
    }

}
